﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
// ReSharper disable InconsistentNaming

namespace GxTsSharp.Models
{
    public enum EMarketID
    {
        /// <summary>
        /// 上证市场
        /// </summary>
        Market_SH = 0,

        /// <summary>
        /// 深证市场
        /// </summary>
        Market_SZ = 1,

        /// <summary>
        /// 三板市场
        /// </summary>
        Market_SB = 2,

        /// <summary>
        /// 个股期权市场
        /// </summary>
        MARKET_OPTION = 3,

        /// <summary>
        /// 股转系统市场
        /// </summary>
        MARKET_GZ = 4,

        /// <summary>
        /// 沪港通
        /// </summary>
        Market_HGT = 5,

        /// <summary>
        /// 上海期货
        /// </summary>
        Market_AF = 'A',

        /// <summary>
        /// 大连期货
        /// </summary>
        Market_BF = 'B',

        /// <summary>
        /// 郑州期货
        /// </summary>
        Market_CF = 'C',

        /// <summary>
        /// 渤海商品BOCE
        /// </summary>
        Market_BOCE = 'D',

        /// <summary>
        /// 上海黄金SHG
        /// </summary>
        Market_SHG = 'E',

        /// <summary>
        /// 开放基金
        /// </summary>
        Market_LOF = 'F',

        /// <summary>
        /// 股指期货
        /// </summary>
        Market_GF = 'G',

        /// <summary>
        /// 香港市场
        /// </summary>
        Market_HK = 'H',

        /// <summary>
        /// 外汇
        /// </summary>
        Market_FOREX = 'I',

        /// <summary>
        /// 经济数据
        /// </summary>
        Market_ECONOMY = 'J',


        /// <summary>
        /// 纽约商业交易所NYMEX
        /// </summary>
        Market_NYMEX = '0',

        /// <summary>
        /// 纽约期货交易所NYBOT
        /// </summary>
        Market_NYBOT = '1',

        /// <summary>
        /// 纽约商品交易所COMEX
        /// </summary>
        Market_COMEX = '2',

        /// <summary>
        /// 芝加哥商品交易所CBOT
        /// </summary>
        Market_CBOT = '3',

        /// <summary>
        /// 芝加哥商业交易所CME
        /// </summary>
        Market_CME = '4',

        /// <summary>
        /// 伦敦金属交易所LME
        /// </summary>
        Market_LME = '5',

        /// <summary>
        /// 伦敦国际石油交易所IPE
        /// </summary>
        Market_IPE = '6',

        /// <summary>
        /// 全球指数GLOBLE
        /// </summary>
        Market_GLOBLE = '7',

        /// <summary>
        /// 中国概念股        
        /// </summary>
        Market_CHN = '8',

        /// <summary>
        /// 美国知名股
        /// </summary>
        Market_AME = '9',

        /// <summary>
        /// 
        /// </summary>
        Market_NONE = 127
    };

    /// <summary>
    /// 请求类型
    /// </summary>
    public enum L1_Ask_Type 
    {
        /// <summary>
        /// 登录请求
        /// </summary>
        LoginAsk = 0x01,

        /// <summary>
        /// 错误返回,当一个请求不对是返回
        /// </summary>
        ErrorAsk = 0x02,

        /// <summary>
        /// 心跳
        /// </summary>
        PlusAsk = 0X03,

        /// <summary>
        /// 市场状态请求
        /// </summary>
        MarketStatusAsk = 0x21, 

        /// <summary>
        /// 市场时间请求
        /// </summary>
        MarketTimeAsk = 0x22,

        /// <summary>
        /// 市场数据请求
        /// </summary>
        MarketInitAsk = 0x23,

        /// <summary>
        /// 市场数据请求(XML格式)
        /// </summary>
        MarketXMLInitAsk = 0x25,

        /// <summary>
        /// 报价数据请求
        /// </summary>
        ReportAsk = 0x31,

        /// <summary>
        /// 全市场行情
        /// </summary>
        MarketPushAsk = 0X98,
    };

    public enum EKLineType                         //K线类型		
    {
        KLineTypeDay = 1,           //日线
        KLineTypeWeek = 2,          //周线
        KLineTypeMonth = 3,         //月线
        KlineTypeSeason = 4,            //季线
        KlineTypeHalfYear = 5,          //半年线
        KlineTypeYear = 6,          //年线	
        KlineTypeMinute1 = 7,           //1分钟线
        KlineTypeMinute5 = 8,           //5分钟线
        KlineTypeMinute15 = 9,          //15分钟线
        KlineTypeMinute30 = 10,     //30分钟线
        KlineTypeMinute60 = 11,     //60分钟线
        KlineTypeMinute120 = 12,        //120分钟线
        KlineTypeSecond = 13,       //秒线
        KlineTypeTick = 14,
    };
}
